from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://www.douban.com/')

# 8种元素定位
# driver.find_element_by_id()
# driver.find_element_by_name()
# driver.find_element_by_class_name()
# ....

# elem是一个WebElement的对象
elem = driver.find_element_by_name('q')
print("打印出来的{}".format(elem))
# 属性、方法
print(elem.send_keys('王者荣耀'))
# 清空输入框中的内容
print(elem.clear())
# 获取当前元素上级
print(elem.parent)
# 获取标签名
print(elem.tag_name)
# 获取元素的属性
print(elem.get_attribute('maxlength'))
print(elem.get_attribute('placeholder'))

"""
find_element和find_elements的区别
find_element得到的是一个WebElement的对象
如果拥有同样的元素，那么只会返回第一个元素，如果没有就会报错
find_elements得到的是一个列表
"""

# 判断页面中存在/不存在某个元素
# 方法一
# if driver.find_elements_by_name('w'):
#     print("元素存在")
# else:
#     print("元素不存在")
# # 方法二，自动化测试中用的多
# try:
#     driver.find_element_by_name('w')
#     print("元素存在")
# except:
#     print("元素不存在")


